Recently, a communication node (computer, hub, router, etc.) constituting a network such as an Internet or the like needs high speed data transmission due to the increase in the amount of data transmitted and received. An exemplary technique for achieving high speed data transmission is a method for multiplexing a transmission path connecting communication nodes.
When a transmission path between two communication nodes is multiplexed, since packets are transmitted from one communication node to the other communication node via a plurality of transmission paths having different bandwidths, the packet reception order is reversed at the other communication node. When a communication system, in which a transmission path is multiplexed, corrects the reversed packet reception order and transfers packets to a downstream communication node, delay of the packet transmission increases in the communication system due to the time needed for the correction.
A method for reducing delay when a transmission path is multiplexed has been described in, e.g., non-patent reference 1 (T. Nakata et al., “Efficient bundling of heterogeneous radio resources for broadband Internet access from moving vehicles” in proceedings of Global Mobile Congress 2004, Oct. 11-13, 2004, Shanghai, China). Non-patent reference 1 suggests a technique for monitoring states (bandwidth reduction, packet loss, etc.) of the respective multiplexed transmission paths, detecting a state change when it occurs in any transmission path, deciding the packet transmission order, and reflecting the packet transmission order in the packet scheduling.
The prior art of a communication system in which a transmission path is multiplexed will be described.
Meanwhile, hereinafter, for convenience of explanation, it is assumed that all packets are of the same size.
FIG. 1 is a schematic diagram illustrating an operation example of a communication system in which a transmission path is multiplexed according to the first prior art, and FIG. 2 is a schematic diagram illustrating an operation example when bandwidth reduction occurs in the transmission path of the communication system of FIG. 1.
The first prior art provides an example in which bandwidth reduction occurs in any one of the multiplexed transmission paths.
FIGS. 1 and 2 schematically show an operation example of transmission node 1-1 and reception node 1-2, when a packet group starting from sequence number 1 is transmitted from transmission node 1-1 to reception node 1-2 via transmission paths 2-1 and 2-2. The sequence number is given to each packet to express the packet transmission order. Transmission node 1-1 and reception node 1-2 shown in FIGS. 1 and 2 are communication nodes. A communication node that transmits packets is referred to as a ‘transmission node’ and a communication node that receives packets is referred to as a ‘reception node’. From now on, the ‘transmission node’ indicates a communication node that transmits packets and the ‘reception node’ indicates a communication node that receives packets.
Here, it is assumed that transmission path 2-1 has a bandwidth twice as wide as that of transmission path 2-2 and that transmission node 1-1 and reception node 1-2 employ a widespread window control described in, e.g., non-patent reference 2 (Jon Postel, Editor, RFC793, http://tools.ietf.org/html/rfc793) and adopted to TCP as a flow control mechanism. In addition, transmission node 1-1 and reception node 1-2 will be explained on the assumption that, taking into consideration the bandwidth difference between transmission path 2-1 and 2-2 in units of packet size, transmission path 2-1 has a window size of 6 and transmission path 2-2 has a window size of 4. Moreover, in the following description, the unit of the window size is the packet size unless specially mentioned.
First of all, an explanation will be made on the operation of transmission node 1-1 and reception node 1-2 when bandwidth reduction does not occur in transmission path 2-1 and transmission path 2-2 shown in FIG. 1.
Transmission node 1-1 transmits packet stream 10-1 having the window size of transmission path 2-1 using transmission path 2-1 and transmits packet stream 10-2 having the window size of transmission path 2-2 using transmission path 2-2. That is, transmission node 1-1 transmits packet stream 10-1 composed of 6 packets using transmission path 2-1 and transmits packet stream 10-2 composed of 4 packets using transmission path 2-2. Here, whenever allocating 2 packets to packet stream 10-1, transmission node 1-1 allocates 1 packet to packet stream 10-2 taking into consideration the bandwidth difference between transmission path 2-1 and transmission path 2-2.
Transmission node 1-1 decides sequence numbers of the packets allocated to packet streams 10-1 and 10-2 to prevent the packet reception order from being reversed at reception node 1-2.
Reception node 1-2 receives packet stream 10-1 transmitted through transmission path 2-1 and packet stream 10-2 transmitted through transmission path 2-2, respectively. Here, the packet stream received at reception node 1-2 through transmission path 2-1 is referred to as packet stream 20-1 and the packet stream received at reception node 1-2 through transmission path 2-2 is referred to as packet stream 20-2.
When it is assumed that the time to transmit 1 packet using transmission path 2-1 is t, reception node 1-2 can receive the packets of sequence numbers 1 to 6 from the start of packet reception to 4t.
After transmitting packet stream 10-1, transmission node 1-1 receives an acknowledgement (Ack; confirmation response) indicating the reception completion of, e.g., the packet of sequence number 4 from reception node 1-2. In this case, transmission node 1-1 opens the transmit windows of transmission path 2-1 for 3 packets and transmits packet stream 11-1 succeeding packet stream 10-1. Meanwhile, reception node 1-2 transmits the Ack at a given timing under the predetermined rules. The process is the same when reception node 1-2 transmits the Ack in the following description.
In addition, after transmitting packet stream 10-2, transmission node 1-1 receives an Ack indicating the reception completion of, e.g., the packet of sequence number 6 from reception node 1-2. In this case, transmission node 1-1 opens the transmit windows of transmission path 2-2 for 2 packets and transmits packet stream 11-2 succeeding packet stream 10-2.
In the operation example of FIG. 1, reception node 1-2 can receive the packets of sequence numbers 1 to 12 from the start of packet reception to 8t in the normal order without gaps. Accordingly, reception node 1-2 can transmit all the received packets, i.e., the packets of sequence numbers 1 to 12 to, e.g., a downstream node of reception node 1-2.
Next, an explanation will be made on the operation of transmission node 1-1 and reception node 1-2 when bandwidth reduction occurs in the transmission path shown in FIG. 1 with reference to FIG. 2.
Here, an explanation will be made on the operation of transmission node 1-1 and reception node 1-2 when the bandwidth of transmission path 2-1 is reduced by one half at the time point of starting the packet transmission as shown in FIG. 2, i.e., when the bandwidth of transmission path 2-1 becomes equal to the bandwidth of transmission path 2-2 at the same time with or just before the start of packet transmission.
Still referring to FIG. 2, since transmission node 1-1 does not recognize a state change (bandwidth reduction) of transmission path 2-1 at the time point of starting packet transmission, it transmits packet stream 10-1 using transmission path 2-1 and packet stream 10-2 using transmission path 2-2 like transmission node 1-1 shown in FIG. 1.
In the meantime, reception node 1-2 receives packet stream 20-1 at a lower transmission rate than reception node 1-2 shown in FIG. 1 because bandwidth reduction has occurred in transmission path 2-1. Therefore, when transmitting an Ack for the packet received through transmission path 2-1 to transmission node 1-1 at the same timing as the operation example of FIG. 1, reception node 1-2 can transmit the Ack with respect to the packet of sequence number 1.
In this case, since reception node 1-2 receives the packets of sequence numbers 1, 2, 3 and 6 from the start of packet reception to 4t, it can transmit packets of sequence numbers 1 to 3 to a downstream communication node of reception node 1-2.
Moreover, since reception node 1-2 receives the packets of sequence numbers 1 to 6, 9 and 12 from the start of packet reception to 8t, it can transmit packets of sequence numbers 1 to 6 to the downstream node of reception node 1-2.
That is, in the communication system according to the first prior art, as compared with when the bandwidth of transmission path 2-1 is not reduced, when it is reduced by one half at the time point of starting the packet transmission, the transmission rate from reception node 1-2 to the downstream communication node is reduced by one half from the start of packet reception to 8t.
Further, another example of a communication system according to the prior art has been described in Japanese Laid-Open Patent Publication No. 2006-157889. Here, disclosed is a case of packet retransmission when packet loss occurs in a transmission path.
FIG. 3 is a schematic diagram illustrating an operation example of a communication system in which a transmission path is multiplexed according to the second prior art, and FIG. 4 is a schematic diagram illustrating an operation example when packet loss occurs in the transmission path of the communication system shown in FIG. 3.
Like FIGS. 1 and 2 illustrating the first prior art, FIGS. 3 and 4 schematically show an operation example of transmission node 1-1 and reception node 1-2, when a packet group starting from sequence number 1 is transmitted from transmission node 1-1 to reception node 1-2 via transmission paths 2-1 and 2-2. It is assumed that bandwidths and window sizes of transmission path 2-1 and transmission path 2-2 of the second prior art are identical to those of the first prior art shown in FIG. 1.
With relation to the operation example shown in FIG. 1, FIG. 3 further illustrates packet stream 12-1 which transmission node 1-1 transmits through transmission path 2-1 for the third time, and packet stream 22-1 which reception node 1-2 receives through transmission path 2-1 for the third time. It is assumed that no change occurs in the bandwidths or transmission rates of transmission path 2-1 and transmission path 2-2.
When a packet loss does not occur in transmission path 2-1 and transmission path 2-2, as illustrated in FIG. 3, reception node 1-2 can receive packets of sequence numbers Ito 18 from the start of packet reception to 12t and transmit the packets to a downstream node of reception node 1-2.
As a result, still referring to FIG. 3, it is obvious that the communication system that transmits the packets using both transmission path 2-1 and transmission path 2-2 has 1.5 times higher transmission performance than the communication system that transmits the packets merely using transmission path 2-1.
Here, for example, when the packet of sequence number 3 transmitted first using transmission path 2-2 is lost, transmission node 1-1 receives an Ack indicating reception completion of the packet of sequence number 6 and loss information indicating loss of the packet of sequence number 3 before transmitting packet stream 11-2, thereby detecting loss of the packet of sequence number 3. In this case, transmission node 1-1 superimposes the packet of sequence number 3 on packet stream 11-2 and retransmits the same.
In an operation example of FIG. 4, although reception node 1-2 receives the packets of sequence numbers 1, 2 and 4 to 12 from the start of packet reception to 8t, it can transmit the packets of sequence numbers 1 and 2 to a downstream communication node of reception node 1-2. However, since reception node 1-2 receives the packets of sequence numbers 1 to 14 after 10t from the start of packet reception, it can transmit the packets of sequence numbers 1 to 14 to the downstream communication node of reception node 1-2.
That is, in the operation example of FIG. 4, the communication system has lower transmission performance than the communication system that transmits the packets merely using transmission path 2-1 until 10t after reception node 1-2 starts packet reception. That is, FIG. 4 shows demerits of the multiplexing of an unreliable transmission path.
However, according to the second prior art, reception node 1-2 can receive the packets of sequence numbers 1 to 17 after 12t from the start of packet reception, and thus can transmit the packets of sequence numbers Ito 17 to the downstream communication node. Therefore, transmission performance is almost the same as when packet loss does not occur.
The foregoing first and second prior arts relate to a method for detecting a state change when it occurs in a transmission path, and reflecting the state change in the packet scheduling.
Accordingly, when the state change actually occurs in the transmission path, until the state change is detected and reflected in the packet scheduling, transmission node 1-1 continues the packet scheduling based on the prior state of the transmission path.
In the first and second prior arts, it degrades the transmission performance of the multiplexed transmission paths such that the transmission performance of the multiplexed transmission paths is temporarily lower than that of the single transmission path.